When the inherited class need to call the function in the base class, and the function is virtual, then a virtual destructor is needed. In most cases, when there are virtual function in the base class
When the inherited class need to call the function in the base class, and the function is virtual, then a virtual destructor is needed. In most cases, when there are virtual function in the base class